Skip to main content
Version: 2025.11

Module Manifest API Reference

The module manifest defines the contract between your module and the Istari Platform. This file communicates essential information about your module, including:

  • How the platform should run it
  • Which operating systems and agent versions are supported
  • What functions and schemas are defined
  • What dependencies or scripts are required

Some fields are required, while others are optional. For optional fields, note that specifying them may introduce additional required subkeys.

At a minimum, the manifest must tell Istari:

  • What this module is
  • How to run it
  • Which dependencies it has

There are also sections for development dependencies (helpful for module authors) and runtime dependencies (needed when the module runs inside an agent).


Module Properties

PropertyTypeRequiredDescription
module_typeModuleTypesYesType of module (e.g., function, authentication).
module_versionstringYesModule version (must follow SemVer 2.0.0).
module_checksumstringYesSHA256 checksum of the module.
internalbooleanYesIndicates if the module is confined to the authoring group.
operating_systems[OS]YesSupported OS (must align with function-level OS support).
agent_versionstringYesSupported agent version range (accepts semver syntax: ^, ~, >=, etc.).
authors[ContributorInfo]YesAuthors of the module.
functionsobjectYesDeclares module functions (see Function Info).
dependencies[Dependency] | nullNoRuntime dependencies not bundled with the module.
dev_dependencies[Dependency] | nullNoDependencies needed for build/test.
scripts[ScriptInfo] | nullNoBuild/test/clean/install scripts.
module_keystringSee notes.Unique key in format @scope:module.
module_namestringNoDeprecated; use module_key.
tool_keystringNoUnique key of software tool used.
tool_versions[string]NoRequired if tool_key present.
additional_configuration_requiredbooleanNoIndicates if further configuration is needed.
module_display_namestring | nullNoOptional user-facing display name.
tool_display_namestring | nullNoDisplay name for the referenced tool.

Contributor Info

PropertyTypeRequiredDescription
namestringYesContributor’s full name.
emailstringYesContributor’s email.
groupstring | nullNoOrg namespace + group (e.g., @edison:innovation_team).

Dependencies

PropertyTypeRequiredDescription
namestringYesUnique dependency identifier.
versionstringYesDependency version.
tool_typeToolTypeYesauxiliary_tool, istari_module, or auth.
display_namestring | nullNoHuman-readable name.
commandstring | nullNoCommand to run/install.
reasonstring | nullNoWhy this dependency is required.
urlstring | nullNoDocumentation or download URL.

Function Info

Represents a function inside the module.

PropertyTypeRequiredDescription
entrypointstringYesPath/module/class for function execution (relative to module folder).
run_commandstringYesCLI command to run. Must include placeholders like {entrypoint}, {input_file}, {output_file}, {temp_dir}.
function_schemastring | FunctionSchemaYesSchema definition (inline JSON or file path).
display_namestring | nullNoHuman-readable name.
operating_systems[OS] | nullNoOS support (must align with module-level).
tool_versions[string] | nullNoTool versions required.

Function Schemas

Functions define their inputs and outputs using schemas.

Input Schema

PropertyTypeRequiredDescription
typeInputTypeYesOne of: parameter, user_model, auth_info, user_link.
validation_types[string]YesValidators (e.g., @extension:txt, @mime_type:json, @oauth2:google-accounts).
display_namestring | nullNoFriendly name for UI.
optionalboolean | nullNoDefaults to false.

Output Schema

PropertyTypeRequiredDescription
namestringYesOutput identifier.
typeOutputTypeYesEither directory or file.
requiredbooleanYesWhether this output must be produced.
display_namestring | nullNoFriendly display name.
upload_asUploadAs | nullNoDefaults to artifact.
version_ofstring | nullNoIf output is a new version of an input.

Script Info (Optional)

PropertyTypeRequiredDescription
operating_systems[OS]YesOS compatibility.
buildBuildScript | nullNoBuild script with output path.
installstring | nullNoInstall dependencies.
cleanstring | nullNoCleanup script.
test_unitstring | nullNoRun unit tests.
test_integrationstring | nullNoRun integration tests.

Enums

  • ModuleTypes: function, authentication
  • ToolType: istari_module, auxiliary_tool, auth
  • UploadAs: artifact, model
  • InputType: parameter, user_model, auth_info, user_link
  • OutputType: directory, file
  • OS: Windows 10/11/Server 2019/2022, Ubuntu 20.04/22.04/24.04, RHEL 8/9

Entrypoint, Run Command, and Schema

The entrypoint, run_command, and function_schema combine to define how the agent invokes a function.

  • Entrypoint: path to the executable (relative to module folder)
  • Run Command: full command to execute, with placeholders like {entrypoint}, {input_file}, {output_file}, {temp_dir}
  • Schema: defines the expected inputs and outputs

Examples of input file, output file, and config file JSON are provided the next section